<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Building a small memory footprint library</title>
    <link rel="stylesheet" href="gettingStarted.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Berkeley DB Programmer's Reference Guide" />
    <link rel="up" href="build_win.html" title="Chapter 28.  Building Berkeley DB for Windows" />
    <link rel="prev" href="win_build_dist_dll.html" title="Distributing DLLs" />
    <link rel="next" href="build_win_test.html" title="Running the test suite under Windows" />
  </head>
  <body>
    <div class="navheader">
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Building a small memory footprint library</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="win_build_dist_dll.html">Prev</a> </td>
          <th width="60%" align="center">Chapter 28. 
		Building Berkeley DB for Windows
        </th>
          <td width="20%" align="right"> <a accesskey="n" href="build_win_test.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="build_win_small"></a>Building a small memory footprint library</h2>
          </div>
        </div>
      </div>
      <p>For applications that don't require all of the functionality of the full
Berkeley DB library, an option is provided to build a static library with
certain functionality disabled.  In particular, cryptography, hash and
queue access methods, replication and verification are all turned off.
This can reduce the memory footprint of Berkeley DB significantly.</p>
      <p>In general on Windows systems, you will want to evaluate the size of the
final application, not the library build.  The Microsoft LIB file format
(like UNIX archives) includes copies of all of the object files and
additional information.  The linker rearranges symbols and strips out
the overhead, and the resulting application is much smaller than the
library.   There is also a Visual C++ optimization to "Minimize size"
that will reduce the library size by a few percent.</p>
      <p>A Visual C++ project file called <code class="filename">db_small</code> is
provided for this small memory configuration.
During a build, static libraries are created in
<code class="filename">Release</code> or <code class="filename">Debug</code>, respectively.  The library name is
<code class="filename">libdb_small48sd.lib</code> for the debug build, or
<code class="filename">libdb_small48s.lib</code> for the release build.</p>
      <p>For assistance in further reducing the size of the Berkeley DB library, or in
building small memory footprint libraries on other systems, please
contact Berkeley DB support.</p>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="win_build_dist_dll.html">Prev</a> </td>
          <td width="20%" align="center">
            <a accesskey="u" href="build_win.html">Up</a>
          </td>
          <td width="40%" align="right"> <a accesskey="n" href="build_win_test.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">Distributing DLLs </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> Running the test suite under Windows</td>
        </tr>
      </table>
    </div>
  </body>
</html>
